3ddb79c25UE59iu4JJcbRalx95mvcg xen/include/public/xen.h
3e397e66m2tO3s-J8Jnr7Ws_tGoPTg xen/include/xen/ac_timer.h
40715b2epYl2jBbxzz9CI2rgIca7Zg xen/include/xen/acpi.h
+422f0995xCgnbsVhTjSncnqIABs64g xen/include/xen/adv_sched_hist.h
3ddb79c0c0cX_DZE209-Bb-Rx1v-Aw xen/include/xen/cache.h
+ 41f2cea7Yna7xc0X9fyavIjoSFFeVg xen/include/xen/compile.h.in
3f840f12CkbYSlwMrY2S11Mpyxg7Nw xen/include/xen/compiler.h
3ddb79c259jh8hE7vre_8NuE7nwNSA xen/include/xen/config.h
3eb165e0eawr3R-p2ZQtSdLWtLRN_A xen/include/xen/console.h
spin_unlock_irq(&schedule_data[cpu].schedule_lock);
- /* Ensure that the domain has an up-to-date time base. */
- if ( !is_idle_task(next) )
- update_dom_time(next->shared_info);
-
- if ( unlikely(prev == next) )
+ if ( unlikely(prev == next) ) {
+#ifdef ADV_SCHED_HISTO
+ adv_sched_hist_to_stop(cpu);
+#endif
return;
-
+ }
perfc_incrc(sched_ctx);
+ cleanup_writable_pagetable(prev);
+
#if defined(WAKE_HISTO)
if ( !is_idle_task(next) && next->wokenup ) {
ulong diff = (ulong)(now - next->wokenup);
*/
clear_bit(DF_RUNNING, &prev->flags);
- /* Mark a timer event for the newly-scheduled domain. */
- if ( !is_idle_task(next) )
+ /* Ensure that the domain has an up-to-date time base. */
+ if ( !is_idle_task(next) && update_dom_time(next) )
send_guest_virq(next, VIRQ_TIMER);
++
+#ifdef ADV_SCHED_HISTO
+ adv_sched_hist_to_stop(cpu);
+#endif
schedule_tail(next);
BUG();